home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / forth / pfe-0.000 / pfe-0 / pfe-0.9.13 / src / options.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-07-17  |  5.2 KB  |  184 lines

  1. /*
  2.  * This file is part of the portable Forth environment written in ANSI C.
  3.  * Copyright (C) 1995  Dirk Uwe Zoller
  4.  *
  5.  * This library is free software; you can redistribute it and/or
  6.  * modify it under the terms of the GNU Library General Public
  7.  * License as published by the Free Software Foundation; either
  8.  * version 2 of the License, or (at your option) any later version.
  9.  *
  10.  * This library is distributed in the hope that it will be useful,
  11.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  13.  * See the GNU Library General Public License for more details.
  14.  *
  15.  * You should have received a copy of the GNU Library General Public
  16.  * License along with this library; if not, write to the Free
  17.  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  18.  *
  19.  * This file is version 0.9.13 of 17-July-95
  20.  * Check for the latest version of this package via anonymous ftp at
  21.  *    roxi.rz.fht-mannheim.de:/pub/languages/forth/pfe-VERSION.tar.gz
  22.  * or    sunsite.unc.edu:/pub/languages/forth/pfe-VERSION.tar.gz
  23.  * or    ftp.cygnus.com:/pub/forth/pfe-VERSION.tar.gz
  24.  *
  25.  * Please direct any comments via internet to
  26.  *    duz@roxi.rz.fht-mannheim.de.
  27.  * Thank You.
  28.  */
  29. /*
  30.  * options.h ---    User configurable options, change to suit your needs.
  31.  *            See file `install' for explanations.
  32.  */
  33.  
  34.  
  35. #ifndef __OPTIONS_H
  36. #define __OPTIONS_H
  37.  
  38. /*
  39.  * System location on disk and file name conventions:
  40.  */
  41.  
  42. #if defined DOS_FILENAMES    /* MS-DOS like file and path names */
  43.  
  44. #if defined WATCOM
  45. # define _STR_(X) X
  46. #else
  47. # define _STR_(X) STRING1(X)
  48. #endif
  49.  
  50. # ifdef PREFIX
  51. #   define ROOTDIR        _STR_(PREFIX)
  52. # else
  53. #   define ROOTDIR        "C:"
  54. # endif
  55. # ifdef PFELIB
  56. #   define LIBDIR        _STR_ (PFELIB)
  57. # else
  58. #   define LIBDIR        ROOTDIR"\\PFE"
  59. # endif
  60. # ifdef PFEHLP
  61. #   define HELPDIR        _STR_ (PFEHLP)
  62. # else
  63. #   define HELPDIR        LIBDIR"\\HELP"
  64. # endif
  65.  
  66. # define PATH_DELIMITER        ';'
  67. # define DIR_DELIMITER        '\\'
  68. # define INC_PATHS        ";"LIBDIR"\\INCLUDE"
  69. # define INC_EXTENSIONS        ";.PFE;.FS;.4TH;.FTH"
  70. # define BLK_PATHS        INC_PATHS
  71. # define BLK_EXTENSIONS        ";.BLK;.SCR;.FB"
  72. # define PFERC_FILE        "PFE0.RC"
  73. # define DEFAULT_BLKFILE    "PFE.BLK"
  74. # define LLCMD            "DIR"
  75. # define LSCMD            "DIR /W"
  76.  
  77. #elif defined UNIX_FILENAMES    /* UNIX-like file and path names */
  78.  
  79. # ifdef PREFIX
  80. #   define ROOTDIR        STRING1 (PREFIX)
  81. # else
  82. #   define ROOTDIR        "/usr/local"
  83. # endif
  84. # ifdef PFELIB
  85. #   define LIBDIR        STRING1 (PFELIB)
  86. # else
  87. #   define LIBDIR        ROOTDIR"/lib/pfe"
  88. # endif
  89. # ifdef PFEHLP
  90. #   define HELPDIR        STRING1 (PFEHLP)
  91. # else
  92. #   define HELPDIR        LIBDIR"/help"
  93. # endif
  94.  
  95. # define PATH_DELIMITER        ':'
  96. # define DIR_DELIMITER        '/'
  97. # define INC_PATHS        ":~/.pfe:"LIBDIR"/include"
  98. # define INC_EXTENSIONS        ":.pfe:.fs:.4th:.fth:.forth"
  99. # define BLK_PATHS        INC_PATHS
  100. # define BLK_EXTENSIONS        ":.blk:.scr:.fb"
  101. # define PFERC_FILE        "~/.pferc"
  102. # define DEFAULT_BLKFILE    "pfe.blk"
  103. # define LLCMD            "ls -alF"
  104. # define LSCMD            "ls -C"
  105.  
  106. #else
  107.  
  108. #error "Don't know what kind of file names your system uses, check config.h"
  109.  
  110. #endif
  111.  
  112.  
  113. /*
  114.  * System size in memory:
  115.  */
  116.  
  117. #define    TOTAL_KB    1024    /* size of system altogether in KBytes */
  118. #define TOTAL_SIZE    (TOTAL_KB * 1024)
  119. #define    STACK_SIZE    0    /* 0 -> TOTAL_SIZE / 8 */
  120. #define    FLT_STACK_SIZE    0    /* 0 -> TOTAL_SIZE / 16 */
  121. #define    RET_STACK_SIZE    0    /* 0 -> TOTAL_SIZE / 16 */
  122.                 /* the rest is used for dictionary, history, */
  123.                 /* string and block buffers, files etc. */
  124.  
  125. /*
  126.  * Number and size of various system buffers:
  127.  */
  128.  
  129. #define    MAX_FILES    0x10    /* maximum number of open files */
  130. #define POCKETS        8    /* number of buffers and */
  131. #define    POCKET_SIZE    0x100    /* size of buffers for interpretation of S" */
  132.  
  133. #define    MIN_HOLD    0x100    /* minimum space for <# # #S HOLD #> etc. */
  134. #define    MIN_PAD        0x400    /* minimum free space in PAD */
  135. #define    HISTORY_SIZE    0x1000    /* size of command line history buffer */
  136.  
  137.  
  138. /*
  139.  * Options controlling the dictionary structure:
  140.  */
  141.  
  142. #define    ORDER_LEN    16    /* maximum word lists in search order */
  143. #define    LD_THREADS    5    /* 2^n is number of threads in a words list */
  144. #define    LD_LOCALS    5    /* 2^n is number of local variables allowed */
  145.  
  146.  
  147. /*
  148.  * Options controlling input and output:
  149.  */
  150.  
  151. #define    TEXT_COLS    80    /* used only in case pfe fails determining */
  152. #define    TEXT_ROWS    25    /* the screen size */
  153.  
  154. #define    PREFIX_HEX    '$'    /* 0 or prefix for input of hex numbers */
  155. #define    PREFIX_BINARY    '%'    /* 0 or prefix for input of binary numbers */
  156. #define    CAPS_ON        0    /* do you like (faked) caps lock by default? */
  157. #define    LOWER_CASE_ON    1    /* allow "dup" to find "DUP" by default */
  158. #define LWRCASE_FN_ON    1    /* convert file names to lower case? */
  159. #define FLOAT_INPUT_ON    1    /* allow input of floating point numbers */
  160. #define    NO_COMPLETION    0    /* 1 if you don't like completion feature */
  161.  
  162.  
  163. /*
  164.  * Options for the text and block editor:
  165.  */
  166.  
  167. #define    EDITOR        "emacs"    /* preferred editor for text files, */
  168.                 /* env-variable EDITOR overrides this */
  169. #define    LOGNAME        "you"    /* if your machine has no env-variable */
  170.                 /* LOGNAME, put your name here */
  171. #define    ED_TABW        4    /* width of tab steps in block editor */
  172.  
  173.  
  174. /*
  175.  * Special keys, effective when using termunix terminal driver:
  176.  */
  177.  
  178. #define    INTR_KEY    '\025'    /* (^U) key to send a SIGINT */
  179. #define    QUIT_KEY    '\034'    /* (^\) key to send a SIGQUIT */
  180. #define    SUSP_KEY    '\032'    /* (^Z) key to send a SIGTSTP */
  181.  
  182.  
  183. #endif /* ndef __OPTIONS_H */
  184.